package com.luoye.lj.wstool.wsdm;

import com.luoye.lj.wstool.common.MysqlDbConfig;
import com.luoye.lj.wstool.common.StringUtils;
import com.luoye.lj.wstool.wsdm.entity.WsdtEntity;
import com.luoye.lj.wstool.wsdm.entity.WsdtField;

import java.sql.*;
import java.util.ArrayList;
import java.util.List;

/*
 * Created with IntelliJ IDEA.
 * User: Dave Liu
 * Date: 2020/2/10
 * Time: 23:06
 * To change this template use File | Settings | File Templates.
 */
public class MenuAndAuthInserter {
    public static void InsertMenu(MysqlDbConfig dbConfig,String menuName,String menuUrl){
        Connection conn = null;
        Statement stmt = null;
        try {
            // 注册 JDBC 驱动
            Class.forName(dbConfig.getJdbcDriver());
            // 打开链接
            System.out.println("连接数据库...");
            conn = DriverManager.getConnection(dbConfig.getDbUrl(), dbConfig.getUserName(), dbConfig.getPassWord());
            // 执行查询
            System.out.println(" 实例化Statement对象...");
            stmt = conn.createStatement();
            String sql;
            //先查询是否已经存在了
            sql="select * from t_manage_menu where t_menu_url='"+menuUrl+"'";
            ResultSet rs = stmt.executeQuery(sql);
            if(rs.next()){//已经有了
                System.out.println("菜单项已经存在了！");
                rs.close();
                return;
            }
            rs.close();

            //执行insert
            sql="insert into t_manage_menu(parent_id,t_menu_name,t_menu_url) values (0,'"+menuName+"','"+menuUrl+"')";
            boolean b=stmt.execute(sql);
            if(b){
                System.out.println("菜单写入成功！");
            }

        }catch(SQLException se){
            // 处理 JDBC 错误
            se.printStackTrace();
        }catch(Exception e){
            // 处理 Class.forName 错误
            e.printStackTrace();
        }finally{
            // 关闭资源
            try{
                if(stmt!=null) stmt.close();
            }catch(SQLException se2){
            }// 什么都不做
            try{
                if(conn!=null) conn.close();
            }catch(SQLException se){
                se.printStackTrace();
            }
        }

    }
    public static void InsertAuth(MysqlDbConfig dbConfig,String authName,String authDes,String patterns){
        Connection conn = null;
        Statement stmt = null;
        try {
            // 注册 JDBC 驱动
            Class.forName(dbConfig.getJdbcDriver());
            // 打开链接
            System.out.println("连接数据库...");
            conn = DriverManager.getConnection(dbConfig.getDbUrl(), dbConfig.getUserName(), dbConfig.getPassWord());
            // 执行查询
            System.out.println(" 实例化Statement对象...");
            stmt = conn.createStatement();
            String sql;
            //先查询是否已经存在了
            sql="select * from t_manage_auth where authname='"+authName+"'";
            ResultSet rs = stmt.executeQuery(sql);
            if(rs.next()){//已经有了
                System.out.println("权限已经存在了！");
                rs.close();
                return;
            }
            rs.close();

            //执行insert
            sql="insert into t_manage_auth(authname,description,patterns) values ('"+authName+"','"+authDes+"','"+patterns+"')";
            boolean b=stmt.execute(sql);
            if(b){
                System.out.println("权限写入成功！");
            }

        }catch(SQLException se){
            // 处理 JDBC 错误
            se.printStackTrace();
        }catch(Exception e){
            // 处理 Class.forName 错误
            e.printStackTrace();
        }finally{
            // 关闭资源
            try{
                if(stmt!=null) stmt.close();
            }catch(SQLException se2){
            }// 什么都不做
            try{
                if(conn!=null) conn.close();
            }catch(SQLException se){
                se.printStackTrace();
            }
        }

    }
}
